#include "calendar_const.h"
#include "ChnMonthInfo.h"
#include <stdio.h>
#include <string.h>

CChnMonthInfo::CChnMonthInfo(const CHN_MONTH_INFO *info)
{
    SetChnmonthInfo(info);
}

CChnMonthInfo::~CChnMonthInfo(void)
{
}

void CChnMonthInfo::SetChnmonthInfo(const CHN_MONTH_INFO *info)
{
    if(info != NULL)
    {
        memmove(&m_Info, info, sizeof(CHN_MONTH_INFO));
    }
}

void CChnMonthInfo::GetChnmonthInfo(CHN_MONTH_INFO *info)
{
    if(info != NULL)
    {
        memmove(info, &m_Info, sizeof(CHN_MONTH_INFO));
    }
}

void CChnMonthInfo::SetLeapMonth(bool leap)
{
    m_Info.leap = leap ? 1 : 0;
}

void CChnMonthInfo::ReIndexMonthName()
{
    m_Info.mname--;
}

double CChnMonthInfo::GetNewMoonDayJD()
{
    return m_Info.shuoJD;
}

double CChnMonthInfo::GetNextNewMoonDayJD()
{
    return m_Info.nextJD;
}

int CChnMonthInfo::GetMonthIndex()
{
    return m_Info.mmonth;
}

bool CChnMonthInfo::IsLeapMonth()
{
    return (m_Info.leap == 1);
}

int CChnMonthInfo::GetMonthDays()
{
    return m_Info.mdays;
}

int CChnMonthInfo::GetMonthName()
{
    return m_Info.mname;
}

